package com.easylinkin.linkappapi.taskscheduler.constant;

/**
 * <p></p>
 *
 * @author TongJie
 * @since 2020/6/5 20:14
 */
public interface JobEntityConstant {

    /**
     * 任务调度类型，0：接口，1：存储过程
     */
    enum JobTaskTypeEnum {
        /**
         * 任务调度类型，0：接口，1：存储过程
         */
        PROCEDURE("1", "存储过程"),

        /**
         * 任务调度类型，0：接口，1：存储过程
         */
        API("0", "接口");

        private String type;
        private String description;

        JobTaskTypeEnum(String type, String description) {
            this.type = type;
            this.description = description;
        }

        public String getType() {
            return type;
        }

        public String getDescription() {
            return description;
        }
    }

    /**
     * 任务类型，0：周期性，1：一次性
     */
    enum JobTypeEnum {
        /**
         * 任务类型，1：一次性
         */
        ONCE("1", "一次性"),

        /**
         * 任务类型，0：周期性
         */
        CYCLE("0", "周期性");

        private String type;
        private String description;

        JobTypeEnum(String type, String description) {
            this.type = type;
            this.description = description;
        }

        public String getType() {
            return type;
        }

        public String getDescription() {
            return description;
        }
    }


    /**
     * 任务状态， 0禁用 1启用
     */
    enum JobStatusEnum {
        /**
         * 任务状态， 1启用
         */
        ON("1", "启用"),

        /**
         * 任务状态， 0禁用
         */
        OFF("0", "禁用");

        private String type;
        private String description;

        JobStatusEnum(String type, String description) {
            this.type = type;
            this.description = description;
        }

        public String getType() {
            return type;
        }

        public String getDescription() {
            return description;
        }
    }

    /**
     * 是否立即运行，0：否，1：是
     */
    enum IsNowRunEnum {
        /**
         * 是否立即运行，1：是
         */
        YES("1", "立即运行"),

        /**
         * 是否立即运行，0：否
         */
        NO("0", "不立即运行");

        private String type;
        private String description;

        public String getType() {
            return type;
        }

        public String getDescription() {
            return description;
        }

        IsNowRunEnum(String type, String description) {
            this.type = type;
            this.description = description;
        }
    }
}
